home *** CD-ROM | disk | FTP | other *** search
/ ftp.mactech.com 2010 / ftp.mactech.com.tar / ftp.mactech.com / util / EvenBetterBusError.sit / EvenBetterBusError / EvenBetterBusError Readme < prev    next >
Text File  |  1994-12-19  |  2KB  |  24 lines

  1. EvenBetterBusError - a system extension to help catch renegade references to NIL...
  2.  
  3. Many of you have heard of Mr. BusError, a system extension designed to help catch programs that
  4. de-reference NIL (thinking it might be a valid handle...).  Mr. BusError periodically writes a value
  5. to location zero which, if dereferenced, will cause a bus error or address error.  Actually, though,
  6. the value which Mr. BusError stuffs into location zero will only cause bus errors on machines
  7. running in 24-bit mode.  It doesn't cause a bus error in 32-bit mode.
  8.  
  9. So, along comes BetterBusError.  It does pretty much the same thing Mr. BusError does, except
  10. for two things.  First, the value it stuffs into location zero is a "bad" address in 32-bit
  11. mode as well as 24-bit mode.  Second, it also checks to see if anyone has written data to location
  12. zero (another common programming mistake).  So far, so good...
  13.  
  14. Well, unfortunately, the memory manager in the 32-bit clean ROMs has a bug which causes it to 
  15. write to location zero every time SetPtrSize is called while running in 24-bit mode.  This causes
  16. BetterBusError to break into the debugger shouting “Write to NIL!”.  Actually, it's only the
  17. “high” bit of the long at location zero which is changed (the memory manager is “locking” the
  18. “handle” (which isn’t there...).
  19.  
  20. EvenBetterBusError (EBBE) to the rescue!  EBBE does everything the other two extensions do,
  21. and also knows to ignore the high bit at zero since the memory manager will change it...
  22.  
  23. Enjoy.
  24. Greg Marriott